diff options
Diffstat (limited to 'src/routes/(app)/ecash/[id]/+page.server.js')
| -rw-r--r-- | src/routes/(app)/ecash/[id]/+page.server.js | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/src/routes/(app)/ecash/[id]/+page.server.js b/src/routes/(app)/ecash/[id]/+page.server.js index 421c8cb6..15511174 100644 --- a/src/routes/(app)/ecash/[id]/+page.server.js +++ b/src/routes/(app)/ecash/[id]/+page.server.js @@ -1,11 +1,18 @@ -import { auth, get } from "$lib/utils"; import { fail, redirect } from "@sveltejs/kit"; -import parse from "$lib/parse"; +import { auth, fd, post } from "$lib/utils"; -export async function load({ cookies, params, request, url }) { - let { id } = params; - let { token, status } = await get(`/cash/${id}`); - let spent = parseInt(status.spent); - let total = parseInt(status.total); - return { id, token, spent, total }; -} +export const actions = { + default: async ({ cookies, request }) => { + let { token } = await fd(request); + let claimed; + try { + claimed = await post(`/claim`, { token }, auth(cookies)); + claimed = { ok: true }; + } catch (e) { + return fail(400, { error: e.message }); + } + if (claimed?.ok) { + redirect(307, `/${cookies.get("username")}/payments`); + } + }, +}; |
